public class t62 {
    public static void main(String[] args) {
        int n =51;
        int m = 9;
        int dp[][] = new int [n][m];
        dp[0][0] = 1;
        for(int i = 0; i<n;i++){
            for(int j =0; j<dp[i].length; j++){
                if(i ==0 &&j==0){
                    continue;
                }
                 if(j>0){
                     dp[i][j] += dp[i][j-1];
                 }
                 if(i>0){
                     dp[i][j] += dp[i-1][j];
                 }
            }
        }
        System.out.println(dp[n-1][m-1]);

        /*int dp [][] = new int [n][m];
        dp[0][0] = 1;
        System.out.println(dp(n,m));
        int arr[][] = new int[n][m];

        //System.out.println(dp2(arr,n-1,m-1));
        /*for(int i =0; i<=dp.length-1;i++){
            for(int j = 0; j<=dp[i].length-1; j++){
                if(i==0||j==0){
                    dp[i][j] = 1;
                }else{
                    dp[i][j] = dp[i][j-1]+dp[i-1][j];
                }
            }
        }
        System.out.println(dp[n-1][m-1]);*/
    }
    /*public static int dp(int n, int m){//DP
        int dp [][] = new int [n][m];
        dp[0][0] = 1;
        for(int i =0; i<=dp.length-1;i++){
            for(int j = 0; j<=dp[i].length-1; j++){
                if(i==0||j==0){
                    dp[i][j] = 1;
                }else{
                    dp[i][j] = dp[i][j-1]+dp[i-1][j];
                }
            }
        }
        return dp[n-1][m-1];
    }
    /*public static int dp2(int arr[][],int i ,int j){//递归
        if(i == 0 && j== 0){
            return 1;
        }else if (i==0|| j==0){
            return 1;
        }else{
            return dp2(arr,i-1,j)+dp2(arr,i,j-1);
        }
    }*/
}
